جزوه · فصل نهم · جلسه ۷۸ · معرفی سرفصل‌ها ← بازگشت به فهرست
📘 فصل نهم · جلسه ۷۸ معرفی سرفصل‌ها
📅 تاریخ: دوشنبه، ۲ شهریور ۱۴۰۵ 👤 مدرس: محمد عابدینی 🐚 Zsh · 🐧 Debian (کالی) · 📦 Red Hat
🤖 قبل از شروع، یه مثال ساده:

فرض کن هر روز باید یه سری کار تکراری رو توی لینوکس انجام بدی: پشتیبان‌گیری، پاک کردن فایل‌های موقت، ارسال گزارش و ... به‌جای اینکه هر بار دستی این کارها رو انجام بدی، می‌تونی یه دستورالعمل (اسکریپت) بنویسی که خودش این کارها رو انجام بده. اینجوری مثل اینه که یه ربات داری که کارهای تکراری رو برات انجام میده. این فصل دقیقاً بهت یاد میده چطور این ربات‌ها (اسکریپت‌های شل) رو بنویسی!

▍ مقدمه

پس از اتمام فصل هشتم که به مفاهیم شبکه، پیکربندی و عیب‌یابی پرداختیم، اکنون وارد فصل نهم می‌شویم. این فصل به اسکریپت‌نویسی شل (Shell Scripting) اختصاص دارد. اسکریپت‌نویسی یکی از قدرتمندترین مهارت‌ها در لینوکس است که به شما امکان می‌دهد کارهای تکراری را خودکار کنید، سیستم را مدیریت کنید و ابزارهای سفارشی بسازید.

🔑 چرا این فصل مهم است؟

در این فصل، با مفاهیمی آشنا می‌شوید که به شما امکان می‌دهند:

  • اسکریپت‌های شل بنویسید و اجرا کنید.
  • کارهای تکراری را خودکار کنید.
  • با متغیرها، حلقه‌ها و شرط‌ها در اسکریپت‌ها کار کنید.
  • ورودی/خروجی را در اسکریپت‌ها مدیریت کنید.
  • اسکریپت‌های خود را عیب‌یابی (Debug) کنید.
اسکریپت‌نویسی شل در آزمون‌های LPIC و RHCSA بسیار پرتکرار است. حتماً دستورات و مفاهیم را تمرین کنید.

▍ سرفصل‌های فصل نهم

این فصل شامل دو بخش اصلی است که هر کدام به یکی از جنبه‌های مهم اسکریپت‌نویسی می‌پردازد:

📌 بخش اول: نوشتن اولین Shell Script

در این بخش، با مفاهیم پایه اسکریپت‌نویسی آشنا می‌شوید. یاد می‌گیرید که چگونه یک فایل متنی ساده را به یک اسکریپت قابل اجرا تبدیل کنید، شبانگ (Shebang) چیست، چگونه به اسکریپت مجوز اجرا بدهید و چگونه آن را اجرا کنید. همچنین با متغیرها، ورودی/خروجی و دستورات شرطی آشنا می‌شوید.

📌 بخش دوم: خودکارسازی اعمال و اسکریپت

در این بخش، با حلقه‌ها (for, while, until)، دستورات شرطی (if, case)، توابع (Functions) و مدیریت خطا در اسکریپت‌ها آشنا می‌شوید. همچنین یاد می‌گیرید که چگونه اسکریپت‌های خود را با cron زمان‌بندی کنید و از آرگومان‌های خط فرمان در اسکریپت‌ها استفاده کنید.

💡 نکته: اسکریپت‌نویسی یک مهارت عملی است. بهتر است همزمان با مطالعه، کدها را در ترمینال خود تست کنید و اسکریپت‌های کوچک بنویسید.

▍ پیش‌نیازهای این فصل

برای بهره‌مندی کامل از این فصل، بهتر است با مباحث زیر آشنایی داشته باشید:

▍ ابزارهای مفید برای این فصل

در طول این فصل با ابزارهای زیر کار خواهید کرد:

ابزار کاربرد
bash مفسر اسکریپت‌های شل (پیش‌فرض)
chmod +x اعطای مجوز اجرا به اسکریپت
echo چاپ متن در خروجی
read خواندن ورودی از کاربر
if, else, elif دستورات شرطی
for, while, until حلقه‌ها
function تعریف توابع
crontab زمان‌بندی اسکریپت‌ها
✅ تمرین پیشنهادی:
  • یک فایل جدید با نام hello.sh ایجاد کنید و در آن echo "Hello, World!" را بنویسید.
  • با chmod +x hello.sh به آن مجوز اجرا بدهید.
  • اسکریپت را با ./hello.sh اجرا کنید.
  • یک متغیر به نام name تعریف کنید و مقدار آن را با read از کاربر بگیرید و سپس با echo چاپ کنید.